import Vue from 'vue'
import oils from '@/utils/油品'
import moment from 'moment'
const padding = '-'

// 时间格式化
moment.locale('zh-cn')
Vue.filter('dataFormat', (v, format = 'YYYY-MM-DD HH:mm:ss') => {
  return v ? moment(v).format(format) : ''
})

// 油品名称
Vue.filter('oilName', function (value) {
  const oil = oils.getByCode(value)
  return oil ? oil.name : padding
})

// 转换成带 正负号 的数字
Vue.filter('plusOrminus', function (value = 0) {
  let tag = ''
  if (value > 0) {
    tag = '+'
  } else if (value < 0) {
    tag = '-'
  }
  return tag + Math.abs(value)
})

// 过滤门店名称
/*
*  后台不能直接返回门店名称，只能返回一个门店id,😔, 说是要各种连表查询,耗性能🤣，没办法，我只能根据门店id去查门店详情然后再或门店名称,
*  诸如此类，数不胜数
* */
Vue.filter('shopName', id => {
  const item = $g.shopList.find(x => x.id == id)
  return item ? item.shopName : padding
})
/*
*  过滤礼品列表
*  @param { null } id
*  @param { Array } 被过滤的礼品列表
* */
Vue.filter('giftType', (id, _list = []) => {
  const item = _list.find(x => x.id == id)
  return item ? item.name : padding
})

// 过滤会员分组名
Vue.filter('memberName', id => {
  const item = $g.memberTypeList.find(x => x.id == id)
  return item ? item.groupName : '普通会员'
})

// 专车类型名称
Vue.filter('carType', id => {
  const item = $g.carTypeList.find(x => x.id == id)
  return item ? item.carType : padding
})
